<?php
// 版权所有 (C) 2025 尋鯨錄
// 保留所有权利。
// 博客：https://www.xunjinlu.fun/
// 如需二开请保留版权，谢谢。
header('Content-Type: application/json');

// 获取文件名参数
$filename = $_GET['filename'] ?? '';

if (empty($filename)) {
    echo json_encode(['success' => false, 'error' => '文件名不能为空']);
    exit();
}

// 安全检查：确保文件名只包含数字和扩展名
if (!preg_match('/^\d+\.(jpg|jpeg|png|gif|bmp|webp|tiff|svg)$/i', $filename)) {
    echo json_encode(['success' => false, 'error' => '无效的文件名']);
    exit();
}

$file_path = 'img/' . $filename;

// 检查文件是否存在
if (!file_exists($file_path)) {
    echo json_encode(['success' => false, 'error' => '文件不存在']);
    exit();
}

// 获取文件信息
$file_size = filesize($file_path);
$file_time = filemtime($file_path);

// 格式化文件大小
function formatFileSize($bytes) {
    if ($bytes >= 1073741824) {
        return number_format($bytes / 1073741824, 2) . ' GB';
    } elseif ($bytes >= 1048576) {
        return number_format($bytes / 1048576, 2) . ' MB';
    } elseif ($bytes >= 1024) {
        return number_format($bytes / 1024, 2) . ' KB';
    } else {
        return $bytes . ' bytes';
    }
}

// 格式化时间
function formatFileTime($timestamp) {
    return date('Y-m-d H:i:s', $timestamp);
}

echo json_encode([
    'success' => true,
    'size' => formatFileSize($file_size),
    'time' => formatFileTime($file_time),
    'raw_size' => $file_size,
    'raw_time' => $file_time
]);
?> 